package ${businessPackagePath}.convert;

import ${entityPackagePath}.${changeTableName};
import ${entityPackagePath}.${changeTableName}Vo;
import ${entityPackagePath}.${changeTableName}UpdateDto;
import ${entityPackagePath}.${changeTableName}SelectDto;
import ${entityPackagePath}.${changeTableName}InsertDto;
import org.mapstruct.Mapper;

import java.util.List;

/**
* @author ${author}
 * @url https://gitee.com/pucong
* @create ${date}
*/
@Mapper(componentModel = "spring")
public interface ${changeTableName}BeanConvert {

    /**
     * dto转do
     * @param ${changeTableName?uncap_first}Dto
     * @return
     */
    ${changeTableName} dto2do(${changeTableName}UpdateDto ${changeTableName?uncap_first}Dto);

    /**
     * dto转do
     * @param ${changeTableName?uncap_first}Dto
     * @return
     */
    ${changeTableName} dto2do(${changeTableName}SelectDto ${changeTableName?uncap_first}Dto);

    /**
     * dto转do
     * @param ${changeTableName?uncap_first}Dto
     * @return
     */
    ${changeTableName} dto2do(${changeTableName}InsertDto ${changeTableName?uncap_first}Dto);


    /**
     * do转dto
     * @param ${changeTableName?uncap_first}
     * @return
     */
    ${changeTableName}Vo do2vo(${changeTableName} ${changeTableName?uncap_first});


    /**
     * list<do>转list<vo>
     * @param ${changeTableName?uncap_first}s
     * @return
     */
    List<${changeTableName}Vo> do2vos(List<${changeTableName}> ${changeTableName?uncap_first}s);
}
